def call() {
    pipeline {
        agent any

        stages {
            stage('Build Code') {
                steps {
                    script {
                        buildCode();
                    }
                }
            }

            stage('Parallel Execution') {
                stages {
                    stage('Main') {
                        stages {
                            stage('Publish') {
                                steps {
                                    script {
                                        publishArtifact();
                                    }
                                }
                            }
                        }
                    }

                    stage('Branch') {
                        stages {
                            stage('Analyze Code') {
                                steps {
                                    script {
                                        analyzeCode();
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }

}
